(并发编程)临界区:指在多线程/多进程环境中,访问共享资源(如共享变量、文件、队列等)的一段代码区域。为避免数据竞争(race condition),同一时刻通常只允许一个执行流进入临界区;常通过锁、互斥量、信号量等同步机制来保护。日常语境中也可泛指“关键部分/要害段落”,但计算机语境最常见。
/ˈkrɪtɪkəl ˈsɛkʃən/
Please keep the critical section short to improve performance.
请把临界区尽量写短,以提升性能。
If two threads enter the critical section without a mutex, the shared counter may be updated incorrectly, causing a race condition.
如果两个线程在没有互斥量的情况下进入临界区,共享计数器可能会被错误更新,从而引发数据竞争。
critical 源自希腊语 kritikos,意为“能判断的、关键的”;section 源自拉丁语 sectio,意为“切割、分段”。组合成 critical section 在并发计算中引申为“需要谨慎判定/严格保护的代码段”,强调其对正确性“至关重要”。